package com.theeviljames.pure;

import com.theeviljames.exceptions.MatrixException;

public interface IComplexMatrixOps {
	public Complex[][] times(Complex[][] a, Complex[][] b);
	public Complex[][] dot(Complex[][] a, Complex[][] b);
	public Complex[][] inverse(Complex[][] a);
	public Complex[][] minus(Complex[][] a, Complex[][] b);
	public Complex[][] add(Complex[][] a, Complex[][] b)throws MatrixException;
	public Complex[][] scalarTimes(Complex[][] a, Complex b);
	public Complex[][] transpose(Complex[][] a);
	public Complex length(Complex[][] a);
	public void print(Complex[][] matrix);
	public Complex[][] sigmoid(Complex[][] a);
	public Complex[][] deltaSigmoid(Complex[][] a);
	public Complex[][] createComplexMatrix(double[][][] values);
}
